package main

import "fmt"

func main() {
	//第八章：go语言的切片
	//定义一个数组
	//make函数创建一个切片 三个参数：类型，长度，容量
	slice := make([]int, 5, 10)
	fmt.Println(slice)
	//切片的元素个数
	fmt.Println("slice的元素个数", len(slice))
	//切片的容量
	fmt.Println("slice的元素容量", cap(slice))
	//赋值
	slice[0] = 1
	slice[1] = 2
	slice[2] = 3
	slice[3] = 4
	slice[4] = 5
	fmt.Println(slice)

	//定义一个数组并复制
	var arr = [5]int{1, 2, 3, 4, 5}
	//定义一个切片
	var slice2 = arr[1:4]
	fmt.Println(slice2)
	//切前两个元素
	slice3 := slice2[:2]
	fmt.Println(slice3)
	//切后两个元素
	slice4 := slice2[2:]
	fmt.Println(slice4)
}
